/*!
    \copyright  Copyright (c) 2025 Qualcomm Technologies International, Ltd.
                All Rights Reserved.
                Qualcomm Technologies International, Ltd. Confidential and Proprietary.
    \file
    @{
        \ingroup    adkfs
        \brief      Utilities to work with AdKFs files
*/

#ifndef ADKFS_UTILS_H
#define ADKFS_UTILS_H

#include <stdint.h>

/**
 *  \brief Copies a single file from src to dst
 * 
 *  \param[in]  src_path: The absolute path of the file to copy from
 *  \param[in]  src_path: The absolute path of file to copy to
 * 
 *  \returns 0 if the copy succeeds, or an error if it fails. \see errno.h for possible error codes
 *
 * \example Copy a file from the In-memory Filesystem into the Ra Partition Filesystem
 * 
 * int32_t rc = AdkFs_Cp("/mem/myfile.cfg", "/ra/myfile.cfg")
 * if !(ADKFS_SUCCESS(rc))
 * {
 *      DEBUG_LOG_PANIC("Failed to copy file from: %s to :%s", src_filepath, dst_filepath);
 * }
 */
int32_t AdkFs_Cp(const char* src_filepath, const char* dst_filepath);

#endif /*ADKFS_UTILS_H*/
/*! @} */
